Method for implementing turbo equalization compensation, turbo equalizer and system

ABSTRACT

Embodiments of the present application relate to a method for implementing Turbo equalization compensation. The equalizer divides a first data block into n data segments, where D bits in two adjacent data segments in the n data segments overlap, performs recursive processing on each data segment in the n data segments, before the recursive processing, merges the n data segments to obtain a second data block; and performs iterative decoding on the second data block, to output a third data block, where data lengths of the first data block, the second data block, and the third data block are all 1/T of a code length of a LDPC convolutional code.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of International Application No.PCT/CN2013/078570, filed on Jul. 1, 2013, which is hereby incorporatedby reference in its entirety.

TECHNICAL FIELD

Embodiments of the present disclosure relate to the field of opticalcommunications, and in particular, to a method for implementing Turboequalization compensation, a Turbo equalizer and a Turbo equalizersystem.

BACKGROUND

Currently, a transmission rate in a high-speed optical fibertransmission system has been increased, for example, from 40 Gbit/s to100 Gbit/s, and even to 400 Gbit/s. However, various effects in theoptical fiber transmission system such as a nonlinear effect, apolarization mode dispersion (PMD) effect, and a differential codingcost have severely limited a transmission distance of the high-speedoptical fiber transmission system. It is well known that, actionprocesses of these damage effects may be described by using trellisdiagrams, and therefore, these damage effects may be compensated for tosome extent by using a BCJR (Bahl, Cocke, Jelinek, and Raviv)compensation algorithm, a forward and backward recursive operationalgorithm.

To further compensate for the limit on the transmission distance of thehigh-speed optical fiber transmission system from the effects in theoptical fiber transmission system, it has been proposed thatcompensation is performed in a Turbo equalization manner at a receiveend of the high-speed optical fiber transmission system, in other words,system performance is improved by means of interactive iteration betweenmultiple soft information processing modules. For example, iteration isperformed between a low density parity check (LDPC) decoder and a BCJRmodule, to compensate for the differential coding effect, the nonlineareffect, the PMD effect, and the like. Such a Turbo equalization mannercan greatly improve the system performance by compensating for damage ina channel. Herein, one-bit soft information refers to a probabilityvalue of decision on whether this bit is 0 or 1. To simplify anoperation, generally a ratio of a probability of decision that the bitis 0 to a probability of decision that the bit is 1 is used, and thenthe logarithm of the ratio is taken.

In addition, a Turbo equalizer implementing the foregoing Turboequalization manner uses a feedback structure and an LDPC code word, anda BCJR module of the Turbo equalizer uses a common sliding window BCJRwith a serial structure. Generally, a length of the LDPC code word usedin optical communication reaches ten thousand bits, and the entire LDPCcode word needs to be stored in the BCJR module. Therefore, the BCJRmodule may have numerous storage resources. However, the Turbo equalizerusing the feedback structure, the LDPC code word of a large length, andthe complex BCJR module all limit a system throughput.

It can be seen that, in an optical fiber transmission system with a highspeed greater than 100 Gbit/s, to implement a high throughput greaterthan 100 Gbit/s, the foregoing Turbo equalization manner cannot adapt tolarge-capacity high-speed transmission.

SUMMARY

The embodiments of the present invention put forward a method forimplementing Turbo equalization compensation and an equalizer, which areintended to solve a problem that a throughput is limited when Turboequalization compensation is implemented in a high-speed optical fibertransmission system.

According to a first aspect, a method for implementing Turboequalization compensation is put forward, including: dividing a firstdata block into n data segments, where D bits in two adjacent datasegments in the n data segments overlap, n is a positive integer greaterthan or equal to 2, and D is a positive integer greater than or equal to1, performing recursive processing on each data segment in the n datasegments, after recursive processing, merging the n data segments toobtain a second data block; and performing iterative decoding on thesecond data block, to output a third data block, where data lengths ofthe first data block, the second data block, and the third data blockare all 1/T of a code length of a low density parity check (LDPC)convolutional code, and T is a quantity of layers of a step-shaped checkmatrix of the LDPC convolutional code.

With reference to the first aspect, in a first implementation manner ofthe first aspect, the performing recursive processing on each datasegment in the n data segments includes: performing a forward recursiveoperation on each data segment of the n data segments concurrently andperforming a backward recursive operation on each data segment of the ndata segments concurrently.

With reference to the first aspect, in a second implementation manner ofthe first aspect, the performing recursive processing on each datasegment in the n data segments includes: performing a forward recursiveoperation on each data segment of the n data segments concurrently.

With reference to the first aspect, in a third implementation manner ofthe first aspect, the performing recursive processing on each datasegment in the n data segments includes: performing a backward recursiveoperation on each data segment of the n data segments concurrently.

With reference to the first aspect or the first, second, and thirdimplementation manners of the first aspect, in a fourth implementationmanner of the first aspect, the performing recursive processing on eachdata segment in the n data segments includes: receiving the second datablock; performing decoding processing on the received second data blockand other T−1 data blocks on which the iterative decoding has beenperformed, where a data length of each of the other T−1 data blocks onwhich the iterative decoding has been performed is 1/T of the codelength of the LDPC convolutional code; and outputting the third datablock on which the decoding processing has been performed for a maximumquantity of times.

With reference to the first aspect or the first, second, third, andfourth implementation manners, in a fifth implementation manner of thefirst aspect, before the dividing a first data block into n datasegments, the method further includes: performing conditional transitionprobability distribution estimation on the first data block, todetermine channel estimation parameter information.

According to a second aspect, a Turbo equalizer is put forward,including:

a processor; and

a computer readable medium having a plurality of computer executableinstructions that, when executed by the processor, cause the processorto perform the following steps:

dividing a first data block into n data segments, wherein D bits in twoadjacent data segments in the n data segments overlap, n is a positiveinteger greater than or equal to 2, and D is a positive integer greaterthan or equal to 1, performing recursive processing on each data segmentin the n data segments, after recursive processing, merging the n datasegments to obtain a second data block; and

performing iterative decoding on the second data block, to output athird data block,

wherein data lengths of the first data block, the second data block, andthe third data block are all 1/T of a code length of a low densityparity check (LDPC) convolutional code, and T is a quantity of layers ofa step-shaped check matrix of the LDPC convolutional code.

With reference to the second aspect, in a first implementation manner ofthe second aspect, the step of performing recursive processing on eachdata segment in the n data segments comprises: performing a forwardrecursive operation on each data segment of the n data segmentsconcurrently and performing a backward recursive operation on each datasegment of the n data segments concurrently.

With reference to the second aspect, in a second implementation mannerof the second aspect, the step of performing recursive processing oneach data segment in the n data segments comprises: performing a forwardrecursive operation on each data segment of the n data segmentsconcurrently.

With reference to the second aspect, in a third implementation manner ofthe second aspect, the step of performing recursive processing on eachdata segment in the n data segments comprises: performing a backwardrecursive operation on each data segment of the n data segmentsconcurrently.

With reference to the second aspect or the first, second, and thirdimplementation manners of the second aspect, in a fourth implementationmanner of the second aspect, the step of performing iterative decodingon the second data block, to output a third data block comprises:receiving the second data block; performing decoding processing on thereceived second data block and other T−1 data blocks on which theiterative decoding has been performed, where a data length of each ofthe other T−1 data blocks on which the iterative decoding has beenperformed is 1/T of the code length of the LDPC convolutional code;outputting the third data block on which the decoding processing hasbeen performed for a maximum quantity of times.

With reference to the second aspect or the first, second, third andfourth implementation manners of the second aspect, in a fifthimplementation manner of the second aspect, the method further includes:before the dividing the first data block into the n data segments,performing conditional transition probability distribution estimation onthe first data block, to determine channel estimation parameterinformation.

The embodiments of the present application are applied to a receive endof a high-speed optical fiber transmission system. By performingsegmentation processing and forward and backward recursive operations ona received data block, and after that, performing Turbo iterativeprocessing on the data block, a system throughput can be effectivelyimproved.

BRIEF DESCRIPTION OF DRAWINGS

To describe the technical solutions in the embodiments of the presentinvention more clearly, the following briefly introduces theaccompanying drawings required for describing the embodiments of thepresent invention. Apparently, the accompanying drawings in thefollowing description show merely some embodiments of the presentinvention, and a person of ordinary skill in the art may still deriveother drawings from these accompanying drawings without creativeefforts.

FIG. 1 is a flowchart of a Turbo equalization compensation methodaccording to an embodiment of the present invention;

FIG. 2 is a schematic structural diagram of a Turbo equalizer accordingto an embodiment of the present invention;

FIG. 3 is a schematic structural diagram of an overlapped parallel BCJR(OP-BCJR) unit in a Turbo equalizer according to an embodiment of thepresent invention;

FIG. 4 is a schematic structural diagram of an LDPC convolutional codedecoding unit in a Turbo equalizer according to an embodiment of thepresent invention;

FIG. 5 is a schematic structural diagram of a Turbo equalizer accordingto another embodiment of the present invention;

FIG. 6 is a schematic structural diagram of a Turbo equalizer systemaccording to an embodiment of the present invention;

FIG. 7 is a schematic structural diagram of a Turbo equalizer systemaccording to another embodiment of the present invention;

FIG. 8 is a structural diagram of a Turbo equalizer system according toa specific embodiment of the present invention;

FIG. 9 is a structural diagram of a Turbo equalizer according to aspecific embodiment of the present invention;

FIG. 10 is a schematic diagram of a timeslot of iterative processing ofan OP-BCJR unit in a Turbo equalizer according to a specific embodimentof the present invention;

FIG. 11 is a schematic diagram of a specific processing process of anOP-BCJR unit in a Turbo equalizer according to a specific embodiment ofthe present invention; and

FIG. 12 is a structural diagram of a Turbo equalizer system according toanother specific embodiment of the present invention.

DESCRIPTION OF EMBODIMENTS

The following clearly describes the technical solutions in theembodiments of the present invention with reference to the accompanyingdrawings in the embodiments of the present invention. Apparently, thedescribed embodiments are some but not all of the embodiments of thepresent invention. All other embodiments obtained by a person ofordinary skill in the art based on the embodiments of the presentinvention without creative efforts shall fall within the protectionscope of the present invention.

The technical solutions of the present invention may be applied tovarious communications systems, such as: a Global System for MobileCommunications (GSM) system, a Code Division Multiple Access (CDMA)system, a Wideband Code Division Multiple Access (WCDMA) system, ageneral packet radio service (GPRS) system, and a Long Term Evolution(LTE) system.

A user equipment (UE) may also be referred to as a mobile terminal ormobile station and may communicate with one or more core networks byusing a radio access network (RAN). The UE exchanges voice and/or datawith the radio access network.

A base station may be a base station (BTS) in the GSM or CDMA, may alsobe a base station (NodeB) in the WCDMA, and may further be an evolvedNodeB (eNB or e-NodeB) in the LTE. In addition, one base station maysupport/manage one or more cells; when needing to communicate with anetwork, the UE selects a cell to initiate network access.

To resolve a problem that a throughput is limited when Turboequalization compensation is implemented in a high-speed optical fibertransmission system, the embodiments of the present invention putforward a method for implementing Turbo equalization compensation thatis applied to a receive end of the high-speed optical fiber transmissionsystem.

For example, for a transmit end, after a sent signal passes through aframer (framer) in an optical transport unit (OTU), the sent signalsuccessively undergoes convolutional code coding in an LDPCconvolutional code encoder, and differential coding in a differentialencoder, and finally an optical signal is sent by an optical modulatorto an optical fiber transmission network. For a receive end, aftercoherent check, analog to digital converter (ADC) sampling, and normalequalization processing are performed on an optical signal, the opticalsignal enters a Turbo equalizer system to implement Turbo equalizationcompensation, and finally forms a received signal after passing througha deframer in the OTU.

In the embodiments of the present invention, the Turbo equalizer systemmay include at least one Turbo equalizer, for example, each Turboequalizer includes an OP-BCJR unit and an LDPC convolutional codedecoding unit. In addition, the Turbo equalizer system may furtherinclude at least one independent LDPC convolutional code decoding unit.

The following describes, by using an example in which the Turboequalizer system includes one Turbo equalizer, the method forimplementing Turbo equalization compensation according to an embodimentof the present invention. Refer to the following steps.

S11: An OP-BCJR unit in a Turbo equalizer divides a first data blockinto n data segments, where D bits in two adjacent data segments in then data segments overlap, n is a positive integer greater than or equalto 2, and D is a positive integer greater than or equal to 1, performsrecursive processing on each data segment in the n data segments, andmerges the n data segments on which the recursive processing has beenperformed, to obtain a second data block.

Herein, a data length of each of the first data block and the seconddata block are both 1/T of a code length of an LDPC convolutional code,and T is a quantity of layers of a step-shaped check matrix of the LDPCconvolutional code. In addition, a state value of a start symbol of theoverlapped D bits is of equiprobability distribution. Theequiprobability distribution refers to that a probability of statedistribution at this bit is equal in each possible state.

Herein, the code length of the LDPC convolutional code refers to a datalength that meets a layer check relationship. Herein, the “meeting alayer check relationship” refers to that x*H_(i) ^(t)=0 and i=1, 2, . .. , and T, where x is hard decision bit data that meets therelationship, and H_(i) ^(t) is a transposition of the i^(th) layerH_(i) of a check matrix of the LDPC convolutional code. Herein, H₁ toH_(T) constitute the check matrix of the LDPC convolutional code.

In other words, T indicates that a total of T code word blocks arecombined to jointly meet the check relationship of the LDPCconvolutional code. T is determined by a step-shaped structure parameter(namely, the quantity of layers) of the check matrix H of the LDPCconvolutional code. For example, assuming that a quantity of columnsstaggered from each other between the i^(th) layer H_(i) and the(i+1)^(th) layer H_(i+1) of the check matrix of the LDPC convolutionalcode is N_(T), and a quantity of columns on each layer of the checkmatrix of the LDPC convolutional code is N, where generally N_(T) and Nare constants, then T=N/N_(T).

It can be seen that, a data length of a data block processed in theTurbo equalizer is only 1/T of the code length of the LDPC convolutionalcode, and therefore storage resources needed by the OP-BCJR unit can bereduced.

Further, the performing recursive processing on each data segment in then data segments may include: performing a forward recursive operationand a backward recursive operation on each data segment of the n datasegments concurrently. The performing recursive processing on each datasegment in the n data segments may also include: performing a forwardrecursive operation on each data segment of the n data segmentsconcurrently. The performing recursive processing on each data segmentin the n data segments may also include: performing a backward recursiveoperation on each data segment of the n data segments concurrently.Optionally, the performing recursive processing on each data segment inthe n data segments may include: performing a forward recursiveoperation on some data segments in the n data segments, and performing abackward recursive operation on remaining data segments.

In addition, when the OP-BCJR unit performs a forward recursiveoperation and a backward recursive operation, a probability densityfunction (PDF), a probability distribution parameter, and a transitionprobability parameter of a channel need to be used. In some scenarios,these parameters are known in advance, but in some applicationscenarios, these parameters can only be obtained through channelestimation. Therefore, before the first data block is divided into the ndata segments, conditional transition probability distributionestimation further needs to be performed on the first data block, todetermine channel estimation parameter information.

S12: An LDPC convolutional code decoding unit in the Turbo equalizerperforms iterative decoding on the second data block, to output a thirddata block. Herein, a data length of the third data block is also 1/T ofthe code length of the LDPC convolutional code.

A data length of a data block in Turbo equalization processing is always1/T of the code length of the LDPC convolutional code, and therefore, asystem throughput can be effectively improved.

Specifically, the performing iterative decoding on the second datablock, to output a third data block includes: receiving the second datablock; performing decoding processing on the received second data blockand other T−1 data blocks on which the iterative decoding has beenperformed; and outputting the third data block on which the decodingprocessing has been performed for a maximum quantity of times. Herein, adata length of each of the other T−1 data blocks on which the iterativedecoding has been performed is 1/T of the code length of the LDPCconvolutional code.

It can be known from the above that, this embodiment of the presentinvention is applied to a receive end of a high-speed optical fibertransmission system. By performing, in an OP-BCJR unit, segmentationprocessing and forward and backward recursive operations on a receiveddata block, and performing, in an LDPC convolutional code decoding unit,Turbo iterative processing on data obtained from the OP-BCJR unit, asystem throughput can be effectively improved.

FIG. 2 shows a schematic structural diagram of a Turbo equalizer forimplementing Turbo equalization compensation according to an embodimentof the present invention. With reference to the Turbo equalizer in FIG.2, the following describes in detail how to implement the Turboequalization compensation method described above.

In FIG. 2, a Turbo equalizer 20 includes an OP-BCJR unit 21 and an LDPCconvolutional code decoding unit 22, where:

-   -   the OP-BCJR unit 21 is configured to divide a first data block        into n data segments, where D bits in two adjacent data segments        in the n data segments overlap, n is a positive integer greater        than or equal to 2, and D is a positive integer greater than or        equal to 1, perform recursive processing on each data segment in        the n data segments, and merge the n data segments on which the        recursive processing has been performed, to obtain a second data        block; and    -   the LDPC convolutional code decoding unit 22 is connected to the        OP-BCJR unit 21, and configured to perform iterative decoding on        the second data block, to output a third data block.

In the foregoing, data lengths of the first data block, the second datablock, and the third data block are all 1/T of a code length of a lowdensity parity check LDPC convolutional code, and T is a quantity oflayers of a step-shaped check matrix of the LDPC convolutional code.

Further, as shown in FIG. 3, the OP-BCJR unit 21 may include asegmentation module 211, a recursion module 212, and a merging module213, where:

-   -   the segmentation module 211 is configured to divide the first        data block into the n data segments, where D bits in two        adjacent data segments in the n data segments overlap, n is a        positive integer greater than or equal to 2, and D is a positive        integer greater than or equal to 1;    -   the recursion module 212 is configured to perform the recursive        processing on each data segment in the n data segments; and    -   the merging module 213 is configured to merge the n data        segments on which the recursive processing has been performed,        to obtain the second data block.

Specifically, the recursion module 212 is configured to perform aforward recursive operation and a backward recursive operation on eachdata segment of the n data segments concurrently; or, perform a forwardrecursive operation on each data segment of the n data segmentsconcurrently; or perform a backward recursive operation on each datasegment of the n data segments concurrently. Optionally, the recursionmodule 212 may be further configured to perform a forward recursiveoperation on some data segments in the n data segments, and perform abackward recursive operation on remaining data segments.

Further, as shown in FIG. 4, the LDPC convolutional code decoding unit22 may include a receiving module 221, a decoding module 222, and anoutput module 223, where:

-   -   the receiving module 221 is configured to receive the second        data block;    -   the decoding module 222 is configured to perform decoding        processing on the received second data block and other T−1 data        blocks on which the iterative decoding has been performed, where        a data length of each of the other T−1 data blocks on which the        iterative decoding has been performed is 1/T of the code length        of the LDPC convolutional code; and    -   the output module 223 is configured to output the third data        block on which the decoding processing has been performed for a        maximum quantity of times.

It can be known from the above that, this embodiment of the presentinvention is applied to a receive end of a high-speed optical fibertransmission system. By performing, in an OP-BCJR unit, segmentationprocessing and forward and backward recursive operations on a receiveddata block, and performing, in an LDPC convolutional code decoding unit,Turbo iterative processing on data obtained from the OP-BCJR unit, asystem throughput can be effectively improved.

In addition to an OP-BCJR unit 21 and an LDPC convolutional codedecoding unit 22, an Turbo equalizer 50 shown in FIG. 5 further includesa channel estimating unit 23, where the channel estimating unit 23 isconfigured to: before the OP-BCJR unit divides a first data block into ndata segments, perform conditional transition probability distributionestimation on the first data block, to determine channel estimationparameter information.

In this way, when performing a forward and/or backward recursiveoperation, the OP-BCJR unit needs to use a PDF probability distributionparameter, a transition probability parameter, and the like of achannel, which may be obtained through channel estimation.

In the foregoing embodiments, description is all provided by using oneTurbo equalizer in the Turbo equalizer system as an example. In fact, tomake an effect of Turbo equalization compensation better, it isgenerally considered that, the Turbo equalizer system may include atleast one Turbo equalizer described above. Alternatively, the Turboequalizer system may include at least one Turbo equalizer describedabove, and at least one LDPC convolutional code decoding unit describedabove, where relative positions of the Turbo equalizer and the LDPCconvolutional code decoding unit may randomly change, and are notlimited. Therefore, multi-level BCJR and LDPC convolutional codedecoding processing may be performed in turn on data blocks whose datalength is 1/T of the code length of the convolutional code; and becausethe OP-BCJR unit and the LDPC convolutional code decoding unit areconnected in serial, Turbo equalization iterative processing will beperformed on the data blocks.

A Turbo equalizer system 60 shown in FIG. 6 includes at least one Turboequalizer 20 shown in FIG. 2.

A Turbo equalizer system 70 shown in FIG. 7 includes at least one Turboequalizer 20 shown in FIG. 2, and at least one LDPC convolutional codedecoding unit 22. One LDPC convolutional code decoding unit in the atleast one LDPC convolutional code decoding unit receives the third datablock output by a Turbo equalizer in the at least one Turbo equalizer oranother LDPC convolutional code decoding unit in the at least one LDPCconvolutional code decoding unit, and performs iterative decoding on thethird data block, to output a fourth data block, where a data length ofthe fourth data block is 1/T of the code length of the LDPCconvolutional code.

For example, as shown in a schematic structural diagram of the Turboequalizer system in FIG. 7, multiple Turbo equalizers 20 are connected,which then are further connected to one or more LDPC convolutional codedecoding units 22. In other words, a third data block output by a firstTurbo equalizer 20 is provided to a second Turbo equalizer 20, and usedas a first data block of the second Turbo equalizer, a third data blockoutput by the second Turbo equalizer 20 is provided to a third Turboequalizer 20, and used as a first data block of the third Turboequalizer, and so on. Therefore, a third data block output by a lastTurbo equalizer 20 is provided to a first LDPC convolutional codedecoding unit 22, and used as a second data block for the first LDPCconvolutional code decoding unit 22 to perform iterative decoding, so asto output a third data block after the iterative decoding, a third datablock output by the first LDPC convolutional code decoding unit 22 isused as a second data block for a second LDPC convolutional codedecoding unit 22 to perform iterative decoding, so as to output a thirddata block after the iterative decoding, and so on.

Optionally, the Turbo equalizer 20 and the LDPC convolutional codedecoding unit 22 in the Turbo equalizer system may also be connected toeach other in an interspersed manner. It can be known from the abovethat, an output of a previous processing module (the Turbo equalizer 20or the LDPC convolutional code decoding unit 22) is used as an input ofa subsequent processing module (the Turbo equalizer 20 or the LDPCconvolutional code decoding unit 22), and iteration is performed inturn.

With reference to FIG. 8, the following describes in detail an operatingprinciple of a Turbo equalizer system.

As shown in FIG. 8, at a transmit end, coding is performed by using anLDPC convolutional code encoder, then differential coding is performed,and then an optical modulator sends an optical signal to an opticalfiber transmission network; and at a receive end, after a coherentcheck, analog to digital converter sampling, and normal signalequalization processing using an equalizer, the optical signal entersthe Turbo equalizer system.

The Turbo equalizer system includes: a primary Turbo equalizer (namely,a Turbo equalizer connected to a common signal equalizer) and Msubsequent Turbo equalizers, where a difference between the primaryTurbo equalizer and the subsequent Turbo equalizers lies in that,manners of setting a state value of a start symbol during an operationof an OP-BCJR unit are different. For example, a state value of a startsymbol of an OP-BCJR unit in the primary Turbo equalizer is anequiprobability distribution state value, and a state value of a startsymbol of an OP-BCJR unit in the subsequent Turbo equalizers is a statevalue at a same bit that is obtained from an operation of aprevious-level OP-BCJR unit and read from a memory. The primary Turboequalizer and the subsequent Turbo equalizers both include one OP-BCJRunit and one LDPC convolutional code decoding unit, as shown in FIG. 9.

In addition, the Turbo equalizer system shown in FIG. 8 further includesN independent LDPC convolutional code decoding units. It may beunderstood that, positions of the M subsequent Turbo equalizers and theN LDPC convolutional code decoding units in the Turbo equalizer systemare not limited to those shown in FIG. 8, and a connection in aninterspersed manner may also be used.

FIG. 9 to FIG. 11 jointly describe an operating principle of a Turboequalizer.

As shown in FIG. 9, in an LDPC convolutional code decoding unit, C₁, C₂,C₃, . . . , and C_(T) jointly form a code word sequence that needs tomeet a check relationship of the k^(th) layer of a check matrix of anLDPC convolutional code, and decoding and soft information calculationare performed according to the check relationship of the layer.Meanwhile, an OP-BCJR unit divides a received data block C₀ intosegments according to a state bit in a trellis diagram. D bits inadjacent segments overlap, n overlapped data segments are respectivelysent to n segment processing units (such as BPU_1 to BPU_n) for BCJRoperation processing (which includes a forward recursive operationand/or a backward recursive operation; for details, refer to FIG. 11 andrelevant description).

After completing updating soft information of C₁, C₂, C₃, . . . , andC_(T), the LDPC convolutional code decoding unit outputs the data blockC_(T) to a next-level Turbo equalizer. Meanwhile, the data block C₀ thathas been processed is received from an OP-BCJR unit at a same level, C₀and C₁, C₂, C₃, . . . , and C_(T−1) that are still in the LDPCconvolutional code encoder unit jointly form a code word sequence thatneeds to meet a check relationship of a layer that is one layer higherthan the k^(th) layer of the check matrix of the LDPC convolutionalcode, and decoding and soft information calculation are performedaccording to the check relationship of the layer.

The foregoing Turbo iterative processing process is represented by usinga sequence diagram, as shown in FIG. 10, and an example in which T=4 isused.

At a first moment, in an LDPC convolutional code decoding unit of aTurbo module at the (i−1)^(th) level, C₁, C₂, C₃, and C₄ jointly form acode word sequence that needs to meet a check relationship of an H^(c) ₃^(th) layer of a check matrix Hc of an LDPC convolutional code, anddecoding and soft information calculation are performed according to thecheck relationship of the layer. Meanwhile, an OP-BCJR unit that is alsoat the (i−1)^(th) level performs BCJR parallel operation processing on areceived data block C₀ according to overlapped segments.

At a second moment, the LDPC convolutional code decoding unit at the(i−1)^(th) level outputs the data block C₄ to a Turbo equalizer at thei^(th) level. Meanwhile, the data block C₀ that has been processed isreceived from the OP-BCJR unit at the same level, C₀ and C₁, C₂, and C₃that are still in the LDPC convolutional code encoder unit jointly forma code word sequence that needs to meet a check relationship of an H^(c)₄ layer of the check matrix Hc of an LDPC convolutional code, anddecoding and soft information calculation are performed according to thecheck relationship of the layer.

A specific processing process of the overlapped parallel OP-BCJR unit isshown in FIG. 11. The data block C₀ is divided into multiple segments inadvance, where the segments overlap with each other, and BPU modules areresponsible for processing information update of the segments, forexample, BPU_1, BPU_2, and BPU_3 that are marked at the lower part ofFIG. 11. Bit segments for which each BPU module is responsible andposterior soft information really needs to be updated are a first partin BPU_1, BPU_2, and BPU_3 modules, respectively being BPU_1-1, BPU_2-1,and BPU_3-1; and overlapped parts for which only a state value needs tobe updated by using a state value obtained in previous iteration by anadjacent segment are a second part (a state value of a start symbolshown in this part is a forward state value obtained in the previousiteration by a previous segment) and a third part (a state value of astart symbol shown in this part is a backward state value obtained inthe previous iteration by a next segment) in the BPU_1, BPU_2, and BPU_3modules, respectively being BPU_1-2, BPU_2-2, and BPU_3-2, and BPU_1-3,BPU_2-3, and BPU_3-3.

A processing process of an OP-BCJR unit is as follows: (1) in each BPUmodule, from a memory, a forward state value of a start symbol (a smallblank box on a bit axis) of a bit segment (a second part) that overlapswith a previous segment is read, and a backward state value of a startsymbol (a small solid box on the bit axis) of a bit segment (a thirdpart) that overlaps with a next segment is read, where for an OP-BCJRunit in the primary Turbo equalizer, a state value corresponding to astart symbol is an equiprobability distribution state value; (2) eachBPU module performs an overlapped forward recursive operation (a dottedline in the figure) on an overlapped bit segment of the second part,until an end bit of the bit segment of the second part, and performs anoverlapped backward recursive operation (a dashed line in the figure) onan overlapped bit segment of the third part, until an end bit of the bitsegment of the third part; (3) using the end bits of the bit segments ofthe second part and the third part as start symbols, each BPU moduleperforms a forward recursive operation and a backward recursiveoperation on a bit segment of a first part that each BPU module isreally responsible for updating, and calculates posterior softinformation of each bit according to obtained forward and backward statevalues; and (4) each BPU module needs to store the forward and backwardstate values of the start symbols of the second part and the third partthat overlap with an adjacent bit segment, to be used in an operation ofa next-level OP-BCJR unit.

With the embodiment in FIG. 11, the foregoing describes a process ofperforming forward recursive processing and backward recursiveprocessing on each data segment (that is, BPU module). It should beunderstood that, to simplify recursive processing, it may also be thatonly the forward recursive processing or the backward recursiveprocessing is performed on each data segment (namely, BPU module); orthe forward recursive processing is performed on some data segments, andthe backward recursive processing is performed on the other datasegments.

Therefore, in this embodiment, by performing, in an OP-BCJR unit,segmentation processing and forward and backward recursive operations ona received data block, and performing, in an LDPC convolutional codedecoding unit, Turbo iterative processing on data obtained from theOP-BCJR unit, a throughput of Turbo equalization compensation iseffectively improved and needed storage resources are reduced.

FIG. 12 shows another specific embodiment of a Turbo equalizer systemaccording to an embodiment of the present invention. An output signal ofan equalizer in the prior art needs to pass through a channel estimatingunit (which is a conditional transition probability distributionestimator in FIG. 12), to enter a primary Turbo equalizer only after achannel estimation parameter (such as, a PDF probability distributionparameter, a transition probability parameter, and the like of achannel) is determined. Therefore, conditional transition probabilitydistribution that needs to be used by an OP-BCJR unit in the primaryTurbo equalizer needs to be estimated according to a training sequencein the system. In other words, damage caused in an optical fiber channelby a nonlinear effect and a PMD effect is compensated for.

Obviously, in this embodiment, by performing, in an OP-BCJR unit,segmentation processing and/or forward and backward recursive operationson a received data block, and performing, in an LDPC convolutional codedecoding unit, Turbo iterative processing on data obtained from theOP-BCJR unit, a throughput of Turbo equalization compensation iseffectively improved, needed storage resources are reduced, and damagecaused in an optical fiber channel by a nonlinear effect and a PMDeffect can be compensated for.

It should be understood that, a solution described in each claim of thepresent invention should also be regarded as an embodiment, and featuresin the claims may be combined, for example, different branch stepsperformed after determining steps in the present invention may be usedas different embodiments.

A person of ordinary skill in the art may be aware that, in combinationwith the examples described in the embodiments disclosed in thisspecification, units and algorithm steps may be implemented byelectronic hardware or a combination of computer software and electronichardware. Whether the functions are performed by hardware or softwaredepends on particular applications and design constraint conditions ofthe technical solutions. A person skilled in the art may use differentmethods to implement the described functions for each particularapplication, but it should not be considered that the implementationgoes beyond the scope of the present invention.

It may be clearly understood by a person skilled in the art that, forthe purpose of convenient and brief description, for a detailed workingprocess of the foregoing system, apparatus, and unit, reference may bemade to a corresponding process in the foregoing method embodiments, anddetails are not described herein again.

In the several embodiments provided in the present application, itshould be understood that the disclosed system, apparatus, and methodmay be implemented in other manners. For example, the describedapparatus embodiment is merely exemplary. For example, the unit divisionis merely logical function division and may be other division in actualimplementation. For example, a plurality of units or components may becombined or integrated into another system, or some features may beignored or not performed. In addition, the displayed or discussed mutualcouplings or direct couplings or communication connections may beimplemented through some interfaces. The indirect couplings orcommunication connections between the apparatuses or units may beimplemented in electronic, mechanical, or other forms.

The units described as separate parts may or may not be physicallyseparate, and parts displayed as units may or may not be physical units,may be located in one position, or may be distributed on a plurality ofnetwork units. Some or all of the units may be selected according toactual needs to achieve the objectives of the solutions of theembodiments.

In addition, functional units in the embodiments of the presentinvention may be integrated into one processing unit, or each of theunits may exist alone physically, or two or more units are integratedinto one unit.

When the functions are implemented in the form of a software functionalunit and sold or used as an independent product, the functions may bestored in a computer-readable storage medium. Based on such anunderstanding, the technical solutions of the present inventionessentially, or the part contributing to the prior art, or some of thetechnical solutions may be implemented in a form of a software product.The software product is stored in a storage medium, and includes severalinstructions for instructing a computer device (which may be a personalcomputer, a server, or a network device) to perform all or some of thesteps of the methods described in the embodiments of the presentinvention. The foregoing storage medium includes: any medium that canstore program code, such as a USB flash drive, a removable hard disk, aread-only memory (ROM), a random access memory (RAM), a magnetic disk,or an optical disc.

What is claimed is:
 1. A method for implementing Turbo equalizationcompensation, comprising: dividing a first data block into n datasegments, wherein D bits in two adjacent data segments in the n datasegments overlap, n is a positive integer greater than or equal to 2,and D is a positive integer greater than or equal to 1, performingrecursive processing on each data segment in the n data segments, afterrecursive processing, merging the n data segments to obtain a seconddata block; and performing iterative decoding on the second data block,to output a third data block, wherein data lengths of the first datablock, the second data block, and the third data block are all 1/T of acode length of a low density parity check (LDPC) convolutional code, andT is a quantity of layers of a step-shaped check matrix of the LDPCconvolutional code.
 2. The method according to claim 1, wherein theperforming recursive processing on each data segment in the n datasegments comprises: performing a forward recursive operation on eachdata segment of the n data segments concurrently and performing abackward recursive operation on each data segment of the n data segmentsconcurrently.
 3. The method according to claim 1, wherein the performingrecursive processing on each data segment of the n data segmentscomprises: performing a forward recursive operation on each data segmentof the n data segments concurrently.
 4. The method according to claim 1,wherein the performing recursive processing on each data segment of then data segments comprises: performing a backward recursive operation oneach data segment of the n data segments concurrently.
 5. The methodaccording to claim 1, wherein the performing iterative decoding on thesecond data block, to output a third data block comprises: receiving thesecond data block; performing decoding processing on the received seconddata block and other T−1 data blocks on which the iterative decoding hasbeen performed, wherein a data length of each of the other T−1 datablocks on which the iterative decoding has been performed is 1/T of thecode length of the LDPC convolutional code; and outputting the thirddata block on which the decoding processing has been performed for amaximum quantity of times.
 6. The method according to claim 1, whereinbefore the dividing a first data block into n data segments, the methodfurther comprises: performing conditional transition probabilitydistribution estimation on the first data block, to determine channelestimation parameter information.
 7. A Turbo equalizer, comprising: aprocessor; and a computer readable medium having a plurality of computerexecutable instructions that, when executed by the processor, cause theprocessor to perform: dividing a first data block into n data segments,wherein D bits in two adjacent data segments in the n data segmentsoverlap, n is a positive integer greater than or equal to 2, and D is apositive integer greater than or equal to 1, performing recursiveprocessing on each data segment in the n data segments, after recursiveprocessing, merging the n data segments to obtain a second data block;and performing iterative decoding on the second data block, to output athird data block, wherein data lengths of the first data block, thesecond data block, and the third data block are all 1/T of a code lengthof a low density parity check (LDPC) convolutional code, and T is aquantity of layers of a step-shaped check matrix of the LDPCconvolutional code.
 8. The Turbo equalizer according to claim 7, whereinthe performing recursive processing on each data segment in the n datasegments comprises: performing a forward recursive operation on eachdata segment of the n data segments concurrently and performing abackward recursive operation on each data segment of the n data segmentsconcurrently.
 9. The Turbo equalizer according to claim 7, wherein theperforming recursive processing on each data segment in the n datasegments comprises: performing a forward recursive operation on eachdata segment of the n data segments concurrently.
 10. The Turboequalizer according to claim 7, wherein the performing recursiveprocessing on each data segment in the n data segments comprises:performing a backward recursive operation on each data segment of the ndata segments concurrently.
 11. The Turbo equalizer according to claim7, wherein the performing iterative decoding on the second data block,to output a third data block comprises: receiving the second data block;performing decoding processing on the received second data block andother T−1 data blocks on which the iterative decoding has beenperformed, wherein a data length of each of the other T−1 data blocks onwhich the iterative decoding has been performed is 1/T of the codelength of the LDPC convolutional code; and outputting the third datablock on which the decoding processing has been performed for a maximumquantity of times.
 12. The Turbo equalizer according to claim 7, furthercomprising: before the dividing the first data block into the n datasegments, performing conditional transition probability distributionestimation on the first data block, to determine channel estimationparameter information.